Reducing the Effects of Branch Misprediction through Dynamic Heterogeneous Core Scheduling

نویسندگان

  • Harish Chandran
  • Justin Manweiler
چکیده

The magnitude of a branch misprediction penalty is highly dependent on processor pipeline depth. Although longer pipelines may allow higher clock frequency, because less logic is performed in each stage, a fundamental trade-off exists between increased clock speed and accumulated misprediction penalties. Some programs, with easily predictable branches, will perform optimally on long pipelines. The performance of others will be less acceptable on these deep pipelines due to frequent misprediction penalties. These programs would perform optimally on a shorter pipeline achieved through a slower frequency design. Current-generation processors commonly utilize multiple cores to exploit thread-level parallelism. Mainstream production designs consists of either two, four, or more homogeneous cores. Since the cores are identical, the advantages and disadvantages of design decisions are replicated on each. This work considers the sensibility of a heterogeneous design where each core could have independent microarchitecture, within certain feasibility constraints. We create a heterogeneous core design with which we attempt to individually exploit the advantages of multiple design decisions within the same chip. In particular, we investigate the benefits of a processor design with cores of varied pipeline depth and frequency. We believe that through intelligent speculative context swapping between cores, concurrent threads can be optimally allocated among the various heterogeneous cores based on their respective likelihood of branch misprediction. To test this, we consider a dynamic analysis method by which we heuristically determine when such swaps should occur. In order to evaluate our design, we compare our simulation results with those achieved by both an equivalent homogeneous multi-core processor and an idealized heterogeneous design using an oracle to make optimal swapping decisions.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Complex Branch Profiling for Dynamic Conditional Execution

Branch predictors are widely used as an alternative to deal with conditional branches. Despite the high accuracy rates, misprediction penalties are still large in any superscalar pipeline. DCE, or Dynamic Conditional Execution, is a alternative to reduce the number of predicted branches by executing both paths of certain branches thus reducing the number of predictions and therefore the mispred...

متن کامل

A Novel Meta Predictor Design for Hybrid Branch Prediction

Recent systems have been paved the way for being high-performance due to the super-pipelining, dynamic scheduling and superscalar processor technologies. The performance of the system is greatly affected by the accuracy of the branch prediction because the overhead of each misprediction has grown due to greater number of instructions per cycle and the deepened pipeline. Hybrid branch prediction...

متن کامل

JamaisVu: Robust Scheduling with Auto-Estimated Job Runtimes

JamaisVu is a new end-to-end cluster scheduling system that automatically generates and robustly exploits job runtime predictions. Using runtime knowledge allows it to more effectively pack jobs with diverse time concerns (e.g., deadline vs. latency) and soft placement constraints on heterogeneous cluster resources. JamaisVu’s job run time predictor, JVuPredict uses a new black-box approach tha...

متن کامل

A scalable register file architecture for dynamically scheduled processors

A major obstacle in designing dynamically scheduled processors is the size and port requirement of the register file. By using a multiple banked register file and performing dynamic result renaming, a scalable register file architecture can be implemented without performance degradation. In addition, a new hybrid register renaming technique to efficiently map the logical to physical registers a...

متن کامل

An Efficient Genetic Algorithm for Task Scheduling on Heterogeneous Computing Systems Based on TRIZ

An efficient assignment and scheduling of tasks is one of the key elements in effective utilization of heterogeneous multiprocessor systems. The task scheduling problem has been proven to be NP-hard is the reason why we used meta-heuristic methods for finding a suboptimal schedule. In this paper we proposed a new approach using TRIZ (specially 40 inventive principles). The basic idea of thi...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007